package com.summer.filesync.model.manager;

import java.time.LocalDateTime;

/** 回收站项目 */
public class RecycleBinItem {
  private String id;
  private String originalPath;
  private String recycleBinPath;
  private String fileName;
  private long fileSize;
  private boolean isDirectory;
  private LocalDateTime deletedTime;
  private String deletedBy;
  private String reason;

  public RecycleBinItem() {
    this.id = java.util.UUID.randomUUID().toString();
    this.deletedTime = LocalDateTime.now();
    this.deletedBy = System.getProperty("user.name", "system");
  }

  // Getters and Setters
  public String getId() {
    return id;
  }

  public void setId(String id) {
    this.id = id;
  }

  public String getOriginalPath() {
    return originalPath;
  }

  public void setOriginalPath(String originalPath) {
    this.originalPath = originalPath;
  }

  public String getRecycleBinPath() {
    return recycleBinPath;
  }

  public void setRecycleBinPath(String recycleBinPath) {
    this.recycleBinPath = recycleBinPath;
  }

  public String getFileName() {
    return fileName;
  }

  public void setFileName(String fileName) {
    this.fileName = fileName;
  }

  public long getFileSize() {
    return fileSize;
  }

  public void setFileSize(long fileSize) {
    this.fileSize = fileSize;
  }

  public boolean isDirectory() {
    return isDirectory;
  }

  public void setDirectory(boolean directory) {
    isDirectory = directory;
  }

  public LocalDateTime getDeletedTime() {
    return deletedTime;
  }

  public void setDeletedTime(LocalDateTime deletedTime) {
    this.deletedTime = deletedTime;
  }

  public String getDeletedBy() {
    return deletedBy;
  }

  public void setDeletedBy(String deletedBy) {
    this.deletedBy = deletedBy;
  }

  public String getReason() {
    return reason;
  }

  public void setReason(String reason) {
    this.reason = reason;
  }
}
